/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package WebServices;


import DataTypes.DataGrupo;
import Hndlr.HndlrGrupo;
import Hndlr.HndlrUsuario;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.logging.Logger;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.ParameterStyle;
import javax.jws.soap.SOAPBinding.Style;
import javax.xml.ws.Endpoint;
import objetos.Contenido;

@WebService
@SOAPBinding(style = Style.RPC, parameterStyle = ParameterStyle.WRAPPED)


public class CtrlModificarPuntajeWS {

    
     private Endpoint endpoint = null;
    private Logger log = Logger.getLogger(CtrlModificarPuntajeWS.class.getName());

    
    @WebMethod(exclude = true)
    public void publicar() {
        Propiedades propiedades = Propiedades.getInstance();
        String nomCtrl = "CtrlModificarPuntaje";
        String camino = "http://" + propiedades.getServer() + ":" + propiedades.getPuerto() + "/" + nomCtrl;
        log.info("publicando el endpoint "+nomCtrl);
        endpoint = Endpoint.publish(camino, this);
        log.info("Endpoint "+nomCtrl+" publicado en " + camino);
    }
    
       @WebMethod(exclude = true)
    public Endpoint getEndpoint() {
        return
                endpoint;
    }
    @WebMethod
    public ArrayList<DataGrupo> listarGrupos() {
        HndlrGrupo Hgrupo = HndlrGrupo.getInstance();
        return Hgrupo.listarGrupos();
    }
    
    @WebMethod
    public void modificarPuntajeCont(@WebParam(name = "leGusta")boolean leGusta,@WebParam(name = "titCont") String titCont,@WebParam(name = "coment") String coment, @WebParam(name = "mailUsr")String mailUsr, @WebParam(name = "esMuroGrupo")boolean esMuroGrupo) {
        ArrayList<Contenido> listCont = null;
        
        if (esMuroGrupo)
            listCont = HndlrGrupo.getInstance().obtenerGrupo(mailUsr).getMuro().getContenidosObjeto();
        else
            listCont = HndlrUsuario.getInstance().obtenerUsuario(mailUsr).getMuro().getContenidosObjeto();
        
        Iterator<Contenido> itera = listCont.iterator();
        Contenido cont = null;
        while (itera.hasNext()){
            cont = itera.next();
            if(cont.getTitulo().equals(titCont)){
                if (leGusta)
                    cont.meGustaComentario(coment);
                else
                    cont.noMeGustaComentario(coment);
            }
        }
    
    }


    
}
